#pragma once

#include "../../Signal/SigSource.h"

namespace Base { namespace Env {

    class Environment;

    class EnvSigSource : public Base::Sig::SigSource
    {
    private:
        EnvSigSource();
        virtual ~EnvSigSource();

    public:
        static EnvSigSource* get();

        void switchEnv(Environment* fromEnv,
                       Environment*   toEnv);
    };

}}